1. Field of the Invention
The present invention relates to a flow data generation method, apparatus, and program product for creating flow data such as a flow chart, work flow, graph, and the like used in data of a work procedure manual, equipment instruction manual, and fault diagnostic system.
2. Description of the Related Art
Work procedure manuals and equipment instruction manuals concerning maintenance work are often created by compiling flow charts created by persons who have developed building components of a target equipment system. In general, building components themselves are complicated in many cases, and functional instructions for building components and the procedures of maintenance work and the like are also complicated. In many cases, a flow chart (or work flow) is used to express creation of functional instructions and maintenance work procedures. As the configuration and procedures become complicated, flow charts for explaining them also become complicated. A complicated flow chart poses a heavy burden on a person who reads the flow chart after completion. A heavy burden is also put on the creator.
Conventional methods concerning an apparatus or method which generates a flow chart considered to reduce these burdens are roughly classified into the following five categories.
(1) A language is analyzed and converted into a tree or graph (see, e.g., patent reference 1: Jpn. Pat. Appln. KOKAI Publication No. 7-182340).
(2) Node information on the graph is input and converted into a flow chart (tree structure) (see, e.g., patent references 2: Jpn. Pat. Appln. KOKAI Publication No. 4-130566, patent reference 3: Jpn. Pat. Appln. KOKAI Publication No. 9-305404, patent reference 4: Jpn. Pat. Appln. KOKAI Publication No. 9-330224, patent reference 5: Jpn. Pat. Appln. KOKAI Publication No. 7-325618, patent reference 6: Jpn. Pat. Appln. KOKAI Publication No. 2000-66884, patent reference 7: Jpn. Pat. Appln. KOKAI Publication No. 7-93158, patent reference 8: Jpn. Pat. Appln. KOKAI Publication No. 8-314725 and nonpatent references 1: “Knowledge Compiler II Based on Domain Model and Failure Model”, Journal of Japanese Society for Artificial Intelligence Vol. 7, No. 4, July 1992, and nonpatent reference 2: “Generation of the Highchart Program Diagrams”, Transactions of Information Processing Society of Japan Vol. 21, No. 10, October 1990 (FIG. 4)).
(3) A so-called expert system is used to define an If-Then data analysis rule and convert separately given data into a flow chart (tree or graph structure) (see, e.g., patent reference 9: Jpn. Pat. Appln. KOKAI Publication No. 4-74224 and nonpatent reference 3: “A Fast Pattern Match Algorithm for Knowledge Based Systems Building Tool—EUREKA”, Transactions of Information Processing Society of Japan Vol. 28, No. 12, December 1987).
(4) The processing flow of computer program codes is converted into a flow chart (tree or graph structure) (see, e.g., patent reference 10: Jpn. Pat. Appln. KOKAI Publication No. 5-257666).
(5) A flow chart is directly created by a flow chart drawing editor (see, e.g., nonpatent reference 4: the homepage of Microsoft Visio (Microsoft) (Internet <URL: http://www.microsoft.com/>).
As described above, conventional methods are classified into the five methods (1) to (5). These methods are more roughly classified into a method of reproducing a flow chart from node data, like methods (1) to (3), and a method of prompting a person to create an entire data structure by directly utilizing the data structure of a computer program, like method (4) or plotting a data structure using a tool, like method (5). Except the use of a separately prepared data structure, like methods (4) and (5), most methods have to adopt node data expression, like methods (1) to (3). This is because a graph structure is generated using a graph theory on the basis of the ground of the graph theory that when node data (and arc data) is obtained, a graph structure is uniquely determined via an adjacency matrix.
Even with the same purpose “reproduce a flow chart from node data”, methods are classified into methods (1) to (3) because of differences in application purpose or node creation method.
Method (1) assumes a natural language or a language with a grammar. The relation between a word which forms a sentence and another word is held as a rule (i.e., a grammar) in accordance with the grammatical attribute. The rule shows the relation of each word based on the attribute for a set of input words. Each word is a node, and the attribute of the word is the profile of the node. The rule interprets the profile, and searches for the chain of another node described in the profile. This method often targets data conversion in the summary of a natural language text or a structured document of XML or the like.
Method (2) creates and uses a profile (attribute) DB concerning node data itself. For example, node data is created as a domain model as shown in FIG. 9 of nonpatent document 1, and tree structure data is created in accordance with arc data (link to another node) of each node. When each node has profile data in addition to arc data, search is performed according to the condition, and thus this system is utilized as an expert system. Alternatively, to display tree data, the profile of each node describes in more detail link data to another node (also holds relational data with another node in the two-dimensional plane). Like patent reference 2, a node profile format which permits one node to have a partial graph (partial tree) is also available. As disclosed in patent references 3 to 6, each value of a data profile serves as a reference (branch node) for classifying data. The data profile is also used to variously change the data structure by changing the branch node order depending on dispersion of the profile values of data or the like. In patent references 7 and 8, not case data is directly defined as a node, but several case data are compiled into a node, thereby generating a tree structure.
Method (3) is directly related to a so-called expert system. Rules for interpreting the profile condition of each data are held, and several permutations of condition decisions are expressed by a tree structure or the like. Method (3) is basically the same as nonpatent reference 1 of method (2), but does not pose a limitation of forming each data as a node (node and arc data).
Method (4) provides an object to see program codes easily by forming data structure information of computer program codes directly into tree structure data. Tree structure (graph structure) data is not generated by chaining nodes.
Method (5) is an editor for prompting a person to create a flow chart. The creator must define nodes and their chains one by one. Similar to method (4), tree structure (graph structure) data is not generated by chaining nodes.
To facilitate creation of a flow chart (graph structure or tree structure), input work must be reduced. It is more desirable to input only node data (containing arc data) and automatically generate a data structure, like methods (1) to (3) than to describe a data structure in addition to a node, like methods (4) and (5).
However, methods (1) to (3) have the following features.                Data must be input for each node in a data structure.        Each data has attribute data in addition to chain information to another data.        The system is configured as an expert system which performs various condition decisions in addition to generation of a data structure.        
Such system realizes an advanced function as represented by an expert system. However, when only a data structure is wanted to be used, input processing and utilization processing are complicated. The system cannot be easily used by many persons in different positions concerning a target.
As for details of the data structure, the conventional method assumes that nodes are exclusive in the graph theory.                An expression for processing the same content in different condition branch logics must be devised such that “an exceptional processing rule is defined, or a new node with a different label for the same content is arbitrarily set.” This makes the system more inconvenient in addition to complicated handling.        
Supplied information is based on the thought stream of the creator, and the user cannot always easily understand the information.
As described above, creation of flow data such as a flow chart, work flow, or graph is conventionally cumbersome. Since the flow data is created by arranging the thought stream of the creator based on each thought of the creators and expressed individually and temporarily, the user cannot always easily understand the data.